Method and system for accurate automatic call tracking and analysis

ABSTRACT

There is disclosed a method in a data processing system for automatically and accurately determining an outcome of a phone call by using signifiers or audibles as a way to increase accuracy without altering the flow of the conversation. The disclosed method can be used in any call center, such as a high volume call center used in the financial (banking), insurance, rental (hotel or car), ticket sales, and the like. The method comprises receiving voice data of a phone call; transmitting a response communication based on the voice data, wherein the response communication includes at least one audible or signifier; identifying, by at least one processor, the at least one audible or signifier in the response communication; and automatically determining the outcome of the phone call based on the audible or signifier in the response communication. A data processing system and a non-transitory computer-readable medium for storing instructions consistent with the described method are also disclosed.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/285,373 (now U.S. Pat. No. 10,264,125), entitled “Method And SystemFor Automatic Call Tracking and Analysis,” filed on Oct. 4, 2016, whichis a continuation-in-part of U.S. patent application Ser. No. 15/229,444entitled “Method And System For Automatic Call Tracking and Analysis,”filed on Aug. 5, 2016, which is a divisional of U.S. patent applicationSer. No. 12/750,523 (now U.S. Pat. No. 9,413,877), entitled “Method ofPatient-Staff Analytics,” filed on Mar. 30, 2010. The disclosure of theabove applications is expressly incorporated herein by reference in itsentirety.

TECHNICAL FIELD

This disclosure generally relates to phone tracking and analysis, andmore particularly to methods and systems for automated phone calltracking and automatic phone call content and outcome analysis. Thisdisclosure also relates to a method for automatically and accuratelydetermining an outcome of a phone call by using signifiers as a way toincrease accuracy without altering the flow of the conversation.

BACKGROUND

Conventionally, there is no readily accessible way for companies ororganizations, such as medical practices, to monitor interactionsbetween staff and potential or existing customers in an objective orquantifiable manner. Valuable data about a staff's performance inaddressing concerns and needs of potential clients is often lost duringthe interaction due to lack of reporting mechanisms and poor internalcommunication. Companies and other organizations are unable to determinewhether potential revenue is lost due to poor staff performance, whethermarketing strategies are successful, whether staff are appropriatelymeeting the needs of clients, or whether the company is properlyallocating its resources into capital investments in services orproducts driven by market demand. This lack of oversight causescompanies and organization to incur significant loss of potentialrevenue while diminishing client satisfaction.

Conventional quality control call centers within an organization, orthird-party quality control centers, record telephone calls for qualityassurance purposes. For example, U.S. Pat. No. 6,724,887 (“Eilbacher”)discloses a contact center which records and analyzes customercommunications. The contact center includes a monitoring system whichrecords customer communications, reviews the communications to identifyparameters of the communications and determines whether the parametersof the customer communications indicate a negative or unsatisfactoryexperience. The analyzing unit performs a stress analysis on telephonecalls to determine a stress parameter by processing the audio portionsof the telephone calls to ultimately determine whether the experience ofthe caller 102 was satisfactory or unsatisfactory. However, this doesnot analyze the content or outcome of a call.

Typical conventional services are normally offered by consultantsseeking to provide general advice for enhancing performance within alarge organization. Such services are normally not affordable for manycompanies, such as smaller medical practices, interested in learning howwell they perform with respect to other smaller companies. Furthermore,such conventional systems are intended to be provided infrequently usingset parameters, and do not allow the user to constantly interact withthe quality assurance system directly over a long period of time. Theseconsultants may also not give actionable intelligence, and conventionalautomated systems do not give intelligence on the content or outcome ofa call. They also do not provide for efficient lead generation tracking,e.g., determining how a caller found out about the business.

Furthermore, other conventional systems involve obtaining survey datafrom various businesses through questionnaires for the purposes ofcomparing the performance of the various staffs of each office. However,one problem with surveys is in obtaining accurate data from staffbecause staff employees may not be truthful in their interactions withclients. Staff may also not be aware of perceptions of themselves byclients. Conventionally, these businesses also have no ability tocompare their office's performance with that of other offices of othercomparable businesses.

One field typically suffering from many of the above-mentioned problemsis the medical practice field. Medical practices often have difficultyknowing if their staff is successfully interacting with patients andpotential patients when discussing potential treatments. However, manyother companies and organizations, both large and small, suffer the sameor similar problems.

Conventional systems do not automatically analyze the content of a call,providing analytics and the result of the outcome of a call Accordingly,there is a desire for to avoid these and other related problems.

SUMMARY

One aspect of the present disclosure is directed to a method in a dataprocessing system for automatically and accurately determining anoutcome of a phone call, specifically by using signifiers as a way toincrease accuracy without altering the flow of the conversation. Themethod comprising may include receiving voice data of a phone call,transmitting a response communication based on the voice data (with theresponse communication including at least one audible or signifier),identifying, by at least one processor, the at least one audible orsignifier in the response communication; and automatically determiningthe outcome of the phone call based on the audible or signifier in theresponse communication.

Another aspect of the present disclosure is directed to a dataprocessing system for automatically determining an outcome of a phonecall. The system may include a database comprising data associated withaudibles and signifiers and a memory configured to store instructions.The instructions may cause a processor to receive voice data of a phonecall, transmit a response communication based on the voice data, whereinthe response communication includes at least one audible or signifier,identify the at least one audible or signifier in the responsecommunication; and determine the outcome of the phone call based on theaudible or signifier in the response communication.

Yet another aspect of the present disclosure is directed to anon-transitory computer-readable medium storing instructions which, whenexecuted, cause one or more processors to perform a method fordetermining an outcome of a phone call The method may include receivingvoice data of a phone call, transmitting a response communication basedon the voice data (with the response communication including at leastone audible or signifier), identifying, by at least one processor, theat least one audible or signifier in the response communication; andautomatically determining the outcome of the phone call based on theaudible or signifier in the response communication.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a diagram of an exemplary computer system inaccordance methods and systems consistent with disclosed embodiments.

FIG. 2 depicts components of an exemplary computer in accordance withmethods and systems consistent with disclosed embodiments.

FIG. 3 illustrates a flow chart showing steps in a method fortranscribing a call.

FIG. 4 depicts a flow chart of a method and system for processing andanalyzing a phone call in accordance with methods and systems consistentwith disclosed embodiments.

FIGS. 5a-5c depict a flow chart of a method and system for determiningthe call outcome of a phone call in accordance with methods and systemsconsistent with disclosed embodiments.

FIG. 6 depicts a chart of a method and system for determining the calloutcome of a phone call in accordance with methods and systemsconsistent with disclosed embodiments.

FIG. 7 shows an exemplary decision tree based on an exemplary initialpath.

FIG. 8 depicts a flow chart of the process of determining a condition ortreatment in a phone call.

FIG. 9 depicts an exemplary screen shot showing an example of a reportgenerated based on information collected.

FIG. 10 depicts an exemplary flow chart for determining a phone calloutcome based on a response communication, according disclosedembodiments.

FIG. 11 depicts an exemplary flow chart for determining adjacent wordsto a signifier keyword, according to disclosed embodiments.

DETAILED DESCRIPTION

Methods and systems in accordance with the disclosed embodiments providecommunications tracking and analysis of the content and outcome of acall. The methods and systems described herein automatically andaccurately determine an outcome of a phone call by using signifiers as away to increase accuracy without altering the flow of the conversation.Therefore, these systems may provide businesses with the ability totrack and view analytics of the number, content and various outcomes ofcalls, thereby providing up-to-date, automatically-generated real-timeanalysis of the results of client interactions with staff answering thephones. Methods and systems in accordance with the disclosed embodimentsquantitatively and objectively analyze staff performance and marketingreturn on investment (ROI), and track customer demand across variousprocedures. This may automatically provide information on the number ofcalls with various outcomes, e.g., the customer booked an appointment,the customer hung up while on hold, the customer was connected withvoicemail, the customer left a message on voicemail, the customer is anexisting client, the customer did not book an appointment, the customerdid not book due to cost concerns, the customer purchased a particularproduct, etc., as well as other details about the calls.

In one implementation, the methods and systems operate via an automatedonline software application that operates over a network such as theInternet. The application tracks and sorts incoming phone calls,automatically analyzes the phone calls, and generates reports thatdetermine, for example, patient conversion, staff performance, marketingeffectiveness, customer interests, and call outcomes. They may alsoprovide comparative analysis reports with similar businesses.

In some embodiments, in order to improve the accuracy of the automatedonline software application, the phone call may be answered with aresponse communication that includes audibles or signifiers. Audiblesand signifiers may be words, phrases, or noises that are recognized bythe automated online software and determine the phone outcome. In suchembodiments, the automated software online application may overrideother determinations based on the voice data if there are audibles orsignifiers in the response communication. For example, in a phone call auser may make multiple inquiries and change the topic of conversationdepending on the response obtained from office. Having audibles orsignifiers that clearly define the outcome of the communication mayimprove the accuracy of the outcome determination. Additionally, voicedata may be difficult to analyze if it contains high noise or poorrecording quality. Then, in such embodiments the response communicationwith audibles or signifiers may improve the capacity of the system tocorrectly identify the call outcome.

Generally, when a phone call is received, and a response is provided,the system records the call, automatically transcribes the voice datafrom the call into text, and then analyzes the transcribed text file. Indoing so, the system may determine the outcome of the call as well asother aspects of the content of the call. For example, the system maydetermine if a caller left a message, hung up, is an existing patient,booked an appointment, asked for information, purchased a particularproduct, did not book an appointment or if a certain course of actionwas determined. For example, in the medical field, the system mayautomatically determine the condition or treatment of the patient, e.g.,the caller is likely suffering from a certain condition and likely needsa certain treatment or product.

In particular, in one implementation, methods and systems in accordancewith the disclosed embodiments assist medical practices with trackingand analyzing patient and staff interaction analytics. The methods andsystems record telephone conversations and/or other communications toobtain objective data to compile comparative reports across the medicalsector, while at the same time enable access to actual recordedconversations for staff accountability and/or for use as specificexamples of performance quality.

The analytics may be useful for businesses to determine the performanceof the staff. For example, the booking percentage (percentage of callerswho booked an appointment) may be an indicator of how well a staff isperforming on the phone. In another example, a high percentage of callshaving an outcome of a caller hanging up while on hold, may indicatethat there are an insufficient amount of staff members to handleincoming calls. A call analytics may be very helpful for large companiesand quality assurance procedures. The analytics provide the ability tocompare with other similar businesses to see how the staff is performingin comparison with those businesses. The comparison with otherbusinesses may include performance comparisons of booking percentage,waiting times, number of calls, etc. It also provides for the analysisof individual staff members, such as seeing which staff member has thehighest or lowest booking percentage, the highest or lowest hang uprate, etc.

FIG. 1 illustrates a diagram of an exemplary computer system inaccordance to methods and systems consistent with the disclosedembodiments. As shown, a caller 102 may call a provisioned phone number104 specifically provisioned for a company, in this example office 106.Call analysis server 108 may provide and/or may have access to theprovisioned phone number. Provisioned phone number 104 may be operatedby a third-party provider, for example. In another implementation,caller 102 may call the office 106 directly, and the system may recordthe direct call. Provisioned phone number 104 may be correlated with,for example, a doctor's account on call analysis server 108. Callanalysis server 108 may associate the call with office 106 based on thecorrelation. When the call comes through, the system may play a briefrecording notifying caller 102. The message may indicate that the callis about to be recorded. The system may also immediately patch the callinto office 106 seamlessly. The call may be then recorded by callanalysis server 108, and the resulting data file is stored on theserver's database (not shown). As discussed further below, the call maybe transcribed by voice transcription computer 110. As also discussedbelow, call analysis server 108 may be connected to a network 112 suchas the Internet, so that users may access the results of their callanalytics reports for their offices. These and other components may beused.

FIG. 2 depicts components of an exemplary computer 202 in accordancewith methods and systems consistent with the disclosed embodiments.Computer 202 may represent call analysis server 108, computers of office106, a computer accessing call analysis server 108 over the network 112,voice transcription computer 110, or any other suitable component.

Computer 202 may include bus 204 or other communication mechanism forcommunicating information, and processor 206 coupled with bus 204 forprocessing the information. Computer 202 may also include a main memory208, such as a random access memory (RAM) or other dynamic storagedevice, coupled to bus 204 for storing information and instructions tobe executed by processor 206. In addition, main memory 208 may be usedfor storing temporary variables or other intermediate information duringexecution of instructions to be executed by processor 206. Main memory208 may include a program 210 for implementing automatic call tracking,analysis and reporting in accordance with methods and systems consistentwith the disclosed embodiments. Modules and filters discussed below maybe part of this program 210 and/or stored in main memory 208. Computer202 may further include read only memory (ROM) 109 or other staticstorage device coupled to bus 204 for storing static information andinstructions for processor 206. Storage device 212, such as a magneticdisk or optical disk, may be provided and coupled to bus 204 for storinginformation and instructions.

According to one embodiment, processor 206 may execute one or moresequences of one or more instructions contained in main memory 208. Suchinstructions may be read into main memory 208 from anothercomputer-readable medium, such as storage device 212. Execution of thesequences of instructions in main memory 208 may cause processor 206 toperform the process steps described herein. One or more processors in amulti-processing arrangement may also be employed to execute thesequences of instructions contained in main memory 208. In alternativeembodiments, hard-wired circuitry may be used in place of or incombination with software instructions. Thus, embodiments are notlimited to any specific combination of hardware circuitry and software.

Although described relative to main memory 208 and storage device 212,instructions and other aspects of methods and systems consistent withthe disclosed embodiments may reside on another computer-readablemedium, such as a floppy disk, a flexible disk, hard disk, magnetictape, a CD-ROM, magnetic, optical or physical medium, a RAM, a PROM, andEPROM, a FLASH-EPROM, any other memory chip or cartridge, and/or anyother medium from which a computer can read, either now known or laterdiscovered.

Computer 202 may also include communication interface 214 coupled to bus204. Communication interface 214 may provide a two-way datacommunication coupling to network link 216 that may be connected tonetwork 112, such as the Internet or other computer network. Wirelesslinks may also be implemented. In any such implementation, communicationinterface 214 may send and receive signals that carry digital datastreams representing various types of information.

In one implementation, computer 202 may operate as a web server on anetwork 112 such as the Internet. Computer 202 may also represent othercomputers on the network 112, such as users' computers having webbrowsers, and the user's computers may have similar components ascomputer 202. As described above, the computer 202 may be a callanalysis server having the components described above and may implementmethods and systems consistent with the disclosed embodiments.

FIG. 3 illustrates a flow chart showing steps in a method fortranscribing a call according to the disclosed embodiments. First, thecall may be recorded (step 302), and the recorded voice data file may bestored (step 304). Next, the voice data file may be transcribed by voicetranscription software and/or hardware, which may be located on theserver 108, or may be a third-party voice transcription computer 110(step 306). The voice data file may be transcribed into text, or inanother implementation, into XML or any other suitable format. The voicedata file may be run through various modules and filters described belowduring the analysis process.

FIG. 4 depicts a flow chart of a method and system for processing andanalyzing a phone call in accordance with methods and systems consistentwith the disclosed embodiments. Once the call's voice data file has beentranscribed into text (see FIG. 3), the transcribed text may be thenanalyzed. The text may go through several modules and filters ofanalysis during this process. Modules and filters may be software orsoftware subroutines, hardware, a combination of software and hardware,or any other suitable component. Modules and filters may examine thetext of the file, search for key words and phrase patterns and mayinclude logic statements used to match various features, as well asexternal factors associated with the call such as call duration. Thefirst module may determine the call outcome (step 402), the process ofwhich is described in further detail below (see FIG. 5). The calloutcome may be, for example, caller 102 left a message, hung up while onhold, is an existing patient, booked an appointment, reached ananswering service, or asked for information. However, other outcomes arealso possible.

During the call outcome determination process, it may be determined thatthe call needs to be flagged for screening by a human screener. This mayoccur for several reasons including, for example, the system beingunable to determine the outcome accurately due to the call not matchingpredetermined criteria or the call matching several potential optionsthereby leaving an ambiguity. If the call is flagged (step 404), it maybe then routed to a human call screener either immediately or flaggedfor later screening by a human call screener (step 406). If the call isnot flagged, the process may continue to the next module, in this case,the condition and treatment module (step 408).

However, flagging the call for human intervention may be not required.In one implementation, the call may be processed automatically by thecall analysis server 108, and the likelihood of accuracy is assigned tothe file and displayed after the processing. In addition, easier data toprocess (as described below) may be processed first so that the humanscreener is given as much data as possible before they begin theirscreening. Depending on the manner in which the system is set up, in oneimplementation, a vast majority (e.g., 85%) of calls may be screenedautomatically, and a minority of calls (e.g., 15%) into office 106 maybe screened by humans. In addition, flagging may be used on some of themodules, but not all of them. For example, the call outcome andcondition or treatment may be important to label, but the name of thepatient, appointment date, and staff member may not be as important. Inthis case, the call outcome and condition or treatment may be able to beflagged, while the other modules are not.

This exemplary implementation involves a medical practice, particularlyin the field of dermatology and plastic surgery. In this example, thecondition and treatment module may automatically determine the conditionand treatment for the patient in a medical setting (step 408). Thisinformation may be used for further granularity and analytics and isdiscussed in further detail below (see FIG. 7). During the condition andtreatment process, it may be determined that the call needs to beflagged for screening by a human screener. If the call is flagged (step410), it may be then routed to a human call screener either immediatelyor flagged for later screening by a human call screener (step 412). Ifthe call is not flagged, the process may continue to the next module, inthis case, the determination of caller 102 name (step 414).

Next, the system may determine the name of the patient in an additionalmodule (step 414). In this process, the system may search thetranscribed text file for the word “spell” and the spelling of any namein the call. For example, if a person on a call spells their name letterby letter, the system may be able to determine the name of caller 102.Alternatively, the system may have a list of common names or names ofexisting clients to search for in the text, or use caller ID informationassociated with caller 102 phone number. Any other suitable manner ofdetermining the name may be used.

After determining the name of caller 102, the system may determine adate if any, in this case an appointment date (step 416). In othersituations, the date determined may pertain something else. In oneimplementation, this process may be bypassed if the assigned calloutcome was “answering service,” “hung up on hold,” or “left a message.”In this process, the system may search the message data file to identityan agreed-upon date of an appointment. The system may search for datesin the text, possibly in conjunction with the word “appointment.”Outside data may also be used as well For example, if caller 102 says“August 4th,” the system may insert the current year at the end to makeit “August 4th, 2010.” The appointment time may also be determinedsimilarly. Any other suitable manner of determining the date or time maybe used.

Finally, the staff member who answered the phone call may be determined(step 418). In one implementation, this may be determined by searchingthe text file for a name and comparing it to inputted staff member namesfrom that office. In addition, many times, staff members introducethemselves on a phone call, often at the beginning of the call as thecall is answered. In another implementation, this may be determined bycomparing a voice sample in the voice data file with previously-recordedvoice samples of staff members, possibly stored in an MP3 file. Thiscomparison may be done with third-party software or systems. When thesenames, dates, outcomes and conditions or treatments are determined, theymay be assigned and save to a call file for reporting. The informationmay be stored in a database, for example.

FIGS. 5a-5c depict exemplary flow charts of a method and system fordetermining the call outcome of a phone call in accordance with methodsand systems consistent with the disclosed embodiments. To determine theoutcome of a call, the call may be monitored and transcribed as above.The transcribed text file of the call is then parsed (step 502). Thetext may be run through several filters sequentially, which, in oneimplementation, are in a purposeful order. For example, if caller 102booked an appointment and then hung up while on hold, the hang up whileon hold outcome may trump the booked appointment, and the outcome wouldbe a hang up while on hold. As such, this outcome may be determinedfirst before getting to the booked appointment outcome. For example, thefirst two outcomes (e.g., hung up on hold and left a message) aredefinitive and may not be based on keyword matching like some otherfilters. False positives could result if they were not considered first,e.g., a person who inquires about a consultation fee and then hangs upwhile on hold has an outcome of hang up on hold even though theyinquired about a consultation fee first.

In one implementation, the various outcome modules may be checkedagainst the transcribed text in a sequential order, running through asmany of the checks as needed before a definitive answer may bedetermined. In another implementation described in further detail below,all of the modules may not be checked in order, but rather after aninitial check on the beginning of the phone call, a path is determinedthat narrows down the possible remaining modules that may apply to thecall, and only those modules are checked. This may be done in the formof a “decision tree” that reduces the possibilities left as the processprogresses.

In one implementation, the call analysis server 108 may first checkwhether caller 102 left a message (step 504) by sending the transcribedtext through a left a message filter. This filter may determine whethercaller 102 left a message in several ways, including, but not limitedto, identifying key indicators such as checking for speech after a beep.Also, the transcribed text file may be scanned for keywords that arecommonly used with an answering machine (e.g., “leave a message,” “wewill return your call,” etc.) If caller 102 left a message, a calloutcome may be assigned to the call file (step 506), and the process maycontinue to the next module (e.g., the condition/treatment module, seeFIG. 4).

Next, the call analysis server 108 may determine if caller 102 hung upwhile on hold (step 508). Potential key indicators of this may includecaller 102 hanging up while music is playing, caller 102 hanging upwhile a voice recording is playing, or any other suitable indicator. Ifcaller 102 hung up while on hold, a call outcome may be assigned to thecall file indicating a hang up while on hold (step 510), and the processmay continue to the next module.

Then, the next filter in the system may determine whether caller 102 isan existing patient or client (step 512). It may do so in any of anumber of suitable manners, including, for example, searching the textfile for key indicators or keywords such as common questions and answersand making a determination based on them. For example, if the phrase“are you an existing patient?” is followed by the word “yes,” it may bean indication of caller 102 being an existing patient. Other questionsand answers may be used in the search of the text file. In addition, thetext file may be searched to determine if caller 102 is calling toconfirm or cancel an existing appointment, which may also be anindication that caller 102 is an existing patient. For instance, thesystem may search for the words “cancel” and “appointment.” Althoughcaller 102 could bring up the word “cancel” when booking an appointment(e.g., asking about a cancellation policy), the system may distinguishbetween these two types of calls by the call duration, whereas caller102 cancelling an appointment might take less time. Other phrases may besearched to determine if caller 102 is an existing patient including,for example, the phrases “I was a patient there years ago,” “I think Imade an appointment there,” or “I need to make a follow-up appointment.”Other suitable indicators of an existing patient may also be used. Ifcaller 102 is an existing patient, a call outcome may be assigned to thecall file indicating that caller 102 is an existing patient (step 514),and the process may continue to the next module.

In the next filter, call analysis server 108 may determine whethercaller 102 was calling for a key person who was not available (step516). Call analysis server 108 may determine this by searching forinquiries into a condition or treatment and/or booking an appointment,and the staff may reply with a phrase such as “x isn't available,” or “xis with a patient,” “can I have her/him call you,” and caller 102 orstaff may state caller 102 phone number for a return call, e.g.,“5-5-5-2-1-6-5-2-0-9.” In this case, call analysis server 108 may assigna key person not available call outcome of (step 518).

Then, the next filter in the system determines if caller 102 booked anappointment (step 520). The filter may search for key indicators in thetext file such as a date (that is being scheduled) and the words“appointment” or “consultation.” The system may also search for aspelling of the patient's name as an indicator that they are booking anappointment. Other suitable indicators may also be used. If the systemdetermines that caller 102 booked an appointment, the call file may beassigned an outcome of booked an appointment (step 522), and the systemcontinues to the next module.

Call analysis server 108 may also determine if the call outcome is thata previously-made appointment is saved from being canceled, a specialcircumstance when a patient calls with a prior appointment (mentioningto confirm, reschedule, etc.) and begins to ask cost questions ortreatment effectiveness, and the staff keeps the patient with theircurrent appointment rather than cancelling (step 524). In such a callmay begin with terms such as “rescheduling,” “confirming” or“canceling,” and include further discussions regarding cost, treatmenteffectiveness, etc. and then discussion regarding keeping the currentappointment, e.g., “see you on x date.” Call analysis server 108 maydetermine this outcome by analyzing, for example, the length of thecall, whereas these calls may be typically longer than average calls. Ifit is determined that the staff saved an appointment from beingcancelled, a call outcome of saved appointment may be assigned (step526), and the system may continue to the next module.

Another potential call outcome may be pre-treatmentrescheduling/logistics. Call analysis server 108 may determine if apatient reschedules a booked appointment (step 528). For example, callanalysis server 108 may determine if a patient mentions they “have anappointment” or “need to confirm” their appointment, and may rescheduleto a new date when they will come in. It may also include logisticalquestions like “I have an appointment,” “how do I get to the office,” or“where are you located,” etc. and may end with phrases such as “ok, thatworks,” “see you on x date,” etc. Other suitable indicators may also beused. If the appointment is rescheduled, and does not classify as asaved appointment, it may be assigned a call outcome of pre-treatmentrescheduling logistics (step 530).

Call analysis server 108 may also determine if caller 102 called tocancel an existing appointment (step 532). For example, for caller 102who has an appointment already scheduled, call analysis server 108 maysearch for the phrase “cancel their appointment” and may determine thatcaller 102 does not reschedule to a new date or time. Such a call maybegin with phrases such as “rescheduling,” “confirming” or “canceling”an appointment, and may end with the canceled appointment the end, e.g.,the phrase “your appointment is cancelled).” If it is determined thatcaller 102 canceled an existing appointment, the canceled appointmentcall outcome is assigned (step 534) and the system may continue to thenext module.

Moreover, call analysis server 108 may determine that caller 102 wasinquiring about an appointment but could not find convenient hours andavailability for an appointment (step 536). In this case, caller 102 mayhave a prior appointment or be a new patient, and after stating a phrasesuch as “make an appointment,” “come in for a consultation” or “when canI come in,” the office staff offers appointment dates that caller 102cannot agree to, i.e., it is not a booked appointment outcome. It may bedetermined that appointment was not booked due to lack of availability,and the availability outcome is assigned (step 538).

The next filter in the system may determine whether caller 102 wasconnected to an answering service (step 540), for example, by searchingfor key phrases in the text file such as “office” or “answeringservice.” The system could also retrieve the office hours or reasonablehours for that time zone to confirm. This may also involve the officepersonnel inputting the hours their answering service is active to thesystem. If the system determines that caller 102 was connected to theanswering service, the call file may be assigned an outcome of answerservice (step 542), and the system may continue to the next module.

Call analysis server 108 may determine that caller 102 inquired about aninitial consultation fee and/or did not book an appointment as a resultof there being a consultation fee (step 544). This may be determined bysearching for phrases such as “consultation fee,” “initialconsultation,” and “cost to come in,” etc. A not converted due toconsultation fee inquiry call outcome may be assigned (step 546). Othersuitable indicators may also be used, and the system may move to thenext module after assigning the associated outcome.

Call analysis server 108 may detect that caller 102 had cost concernsand/or didn't book an appointment as a result of there being costconcerns by determining if caller 102 makes an inquiry about a certaincondition or treatment and states various phrases such as “how much doesit cost,” “payment plans,” “financing,” etc. (step 548). Furthermore,the call may end with terms such as “Ok, thanks,” “I will call back,”etc. indicating caller 102 did not book an appointment, and that costconcerns could be primary reason why. Other suitable indicators may alsobe used. In this case, a cost concerns call outcome is assigned (step550). Again, other suitable indicators may also be used, and the systemmoves to the next module after assigning the associated outcome.

Call analysis server 108 may also determine that caller 102 was informedthat the office does not provide the product or service caller 102desired (step 552). For example, if caller 102 inquires about a specificcondition or treatment, and the staff replies “we don't offer x,” “wedon't treat x,” “we don't have x,” it may be determined to be aproduct/service not offered call outcome (step 554).

One general category of call outcomes may be post-treatment questions.Call analysis server 108 may determine that caller 102 is callingregarding side effects, post-operation care, or prescription refills(step 556). To determine if caller 102 is calling about side effects,call analysis server 108 may search for phrases indicating that caller102 is an existing patient as described above, e.g., “I saw Dr. Jones,”or “I just had treatment,” and caller 102 asks questions regarding“redness,” “burning,” “bleeding,” or “pain” for example. Theseindications, in addition to the call not falling into the booked outcomecondition may indicate post-treatment questions, and that outcome maythen be assigned (step 558).

An additional general category may be a product inquiry. Call analysisserver 108 may determine, for example, if caller 102 calls in referenceto a particular product (for example, cross referenced from the office'sproducts as described further under Conditions/Treatments), and office106 confirms that they have it (step 560). Call analysis server 108 maydetermine that the customer or patient has stated a product name and/orother phrases such as “can you ship that to me,” etc. A product inquirycall outcome may be assigned in such a case (step 562). If the callmatches none of these, it may be flagged for human screening (step 564)and/or given a call outcome of undefined.

FIG. 6 depicts an exemplary flow-chart of a method and system fordetermining the call outcome of a phone call in accordance with methodsand systems consistent with the disclosed embodiments. In oneimplementation, the call outcome may not be determined linearly aspreviously described, but rather by a particular path down a “decisiontree” having branches of paths that end in various call outcomes. Thisimplementation may be a preferred implementation over the previouslydescribed linear process due to potentially increased efficiency. Insuch an implementation, less comparisons, filters or evaluations mayneed to be made to determine the call outcome. This implementation mayalso be somewhat predictive of a call outcome, because once an initialdetermination is made, the remaining possibilities left in the decisiontree may be greatly reduced. This may reduce the need to go through manymodules and filters sequentially.

In this implementation, the beginning of call transcript 602 may befirst analyzed. Typically, the sentences at the beginning of a call maydetermine the outcome or may limit the likely possibilities of theoutcome of the call. For example, when a person begins speaking, thefirst thing they ask for may be a significant indication of the likelyoutcome(s) of the call. This indication may choose an associateddecision tree of paths of possible outcome and decisions to be made todetermine the outcome.

First, the initial portion of the call may be parsed, and this portionmay be of any length, e.g., the first 15 seconds of the call, the firstthree sentences, etc. It may be searched for one of several exemplaryopening paths 604-612. The initial portion of the call may be searchedto see if it fits one of several categories which may determine theinitial path and decision tree used, including, for example, “I need toconfirm my appointment,” 604 “I'd like to cancel my appointment,” 606“Do you offer (x)?” 608 “I'm interested in (x), how much does thatcost?” 610 “I'd like to book a consultation, etc.” 612. For example, ifthe call begins with the sentence “Hi, I want to confirm myappointment,” it may be determined that it is likely that caller 102 hasan appointment and a corresponding particular decision tree 614 shouldbe traversed to determine the outcomes. For example, this decision tree614 may have the call outcomes of hung up on hold 616, a saved bookedappointment 618, or any other suitable outcome, i.e., the likely calloutcomes from the initial portion of the call. The filters 620-624 maybe traversed until the process arrives at an outcome 616-618. Theexample outcomes and filters shown on FIG. 6 are merely examples and arenot an exhaustive list. Although not shown on the figure, a decisiontree may be associated with each of these initial paths 604-612.

This decision tree may not include many of the other call outcomes dueto the unlikelihood of resulting in those call outcomes from the initialportion of the conversation. As such, this decision tree may betraversed to the correct call outcome quicker. The resulting reducednumber of call outcomes in the decision tree may be traversed withkeyword matching and other indicators as described previously. Decisiontrees may be designed in any manner and may be adapted to many differentpurposes and industries.

FIG. 7 shows an exemplary decision tree based on an exemplary initialpath. The decision tree may have several different call outcomes as thevarious end nodes of the tree. For example, if the previously mentionedcall (“I need to confirm my appointment”) requested a confirmation ofthe appointment, it may result in several likely call outcomes (e.g.,Pre-treatment rescheduling/logistics, saved booked appointment, notconverted due to consultation fee, etc.) The decision tree process maythen check a first tier of filters or path identifiers to determine thepath that will be traversed. In one implementation, this first tier offilters is traversed in sequential order. As shown on FIG. 7, thisexemplary decision tree has six filters in the first tier. In this case,the first filter in the decision tree is the hung-up-on-hold filter 702previously described. If this filter 702 is satisfied, then the systemmay traverse the decision tree to the outcome hung-up-on-hold 704. Manyof the filters described below may be the same or similar to filters ormodules previously described above.

If this first filter hung-up-on-hold filter 702 is not triggered, thesystem may move to the next filter on the first tier which is a notconverted due to consultation fee filter 706. In this example, thisfilter may determine if caller 102 inquired about a consultation feebefore proceeding to a second tier of filters. The rest of the decisiontree past the second tier may include outcomes that are probably and/orpossible given the results of the previous path in the tree (i.e.,caller needs to confirm appointment and is asking about a consultationfee). If the answer is yes, the decision tree may examine the call withthe first filter in the second tier, in this case, a booked appointmentfilter 708. If the booked appointment filter determines that caller 102maintained their booked appointment, a saved appointment outcome 710 maybe assigned because caller 102 kept the appointment despite thehesitancy over the cost of the consultation fee.

If the booked appointment filter 708 determines that is not a bookedappointment, call analysis server 108 may continue to the next secondtier filter, a cancelled appointment filter 712 in this example. If thecancel appointment filter determines that caller 102 wants to cancel theappointment, a call outcome of not converted due to consultation fee maybe assigned 714. If the appointment is not canceled at that point, itmay default to the most likely outcome at this stage in the pathresulting in an outcome of pre-treatment rescheduling logistics 716.

If consultation fee filter 706 on the first tier of the decision treedetermines that the consultation fee was not inquired into, the processmay continue to the third filter on the first tier, cost concerns filter718. If the cost concerns filter determines that caller 102 has costconcerns, it may continue to the second tier filters under the costconcerns filter 718. Here, the first second-tier filter is bookedappointment filter 720. If booked appointment filter 720 determines thatcaller 102 maintained the booked appointment despite the cost concerns,saved booked appointment outcome may be assigned 722. If the bookedappointment filter 720 determines that the appointment was not booked,call analysis server 108 may continue to the next second tier filter724. In this example, this filter is cancel appointment filter 724. Ifthe cancel appointment filter 724 determines that caller 102 wants tocancel the appointment, a call outcome of not converted-cost concerns726 may be assigned. If the appointment is not canceled at that point,an outcome of pre-treatment rescheduling logistics 728 may be assigned.

If the cost concerns filter 718 on the first tier returns a negativeresult, the process may continue to the fourth filter on the first tier,in this case, pre-treatment rescheduling logistics filter 730. Aftercalling to confirm their appointment, if caller 102 indicates a desireto reschedule their existing appointment to another date, the processmay continue down the decision tree to the first second-tier filter, acanceled appointment filter 732. If this filter 732 determines thatcaller 102 is canceling their appointment because they could not find analternative date that was satisfactory, an outcome ofnot-converted-hours and availability 734 may be returned. Here, thesecond, second-tier filter is a booked appointment filter 736. If thebooked appointment filter 736 determines that caller 102 successfullyreschedules their booked appointment, pre-treatmentrescheduling/logistics outcome 738 may be assigned to the call file.

If fourth, first-tier filter 730 returns a negative, the system mayproceed to the fifth, first-tier filter, which is cancel filter 740. Ifthis filter 740 is triggered, a call outcome of not-converted-canceledappointment 742 may be returned. It is noted, for example, although twotiers are shown here, any number of tiers of filters may be used.

Finally, if the fifth, first-tier filter 740 returns a negative, bookedappointment filter 744 may be checked. In one implementation, the mostlikely outcome of the decision tree (in this case, based on “I need toconfirm my appointment”), if none of the other first tier filters weretriggered, may be the last filter on the first tier. In this instance,caller 102 may ask to confirm their appointment, and then may confirmthat they will be attending their booked appointment. If this filter 744determines that it is a booked appointment, the outcome of pre-treatmentrescheduling and logistics 746 may be returned.

This process may also give an indication of the likely nature of a callto a human screener even if call analysis server 108 cannot accuratelydetermine an exact call outcome and flags the call for further humanscreening, or make the most likely determination of the outcome based onhow and where the call progressed through the decision tree. Thesedecision trees may be short and simple or longer or complicated and maybe designed to facilitate the purpose for which the call system is beingused, whether it is a small medical office, a large computer company, orany other organization. Additionally, there may be some call outcomesthat, in one implementation are common to all decision trees, such asthe hung up on hold call outcome, for example.

FIG. 8 depicts an exemplary flow chart of the process of determining acondition or treatment. In one implementation, this process may be usedto determine a condition or treatment in a dermatological and plasticsurgery setting. However, other conditions or aspects of caller 102phone call may be determined for any suitable industry or purpose. Forexample, the instead of a condition or treatment, the system maydetermine the subject matter of the call, whether caller 102 questionwas answered, whether caller 102 is satisfied with the result of thecall, whether a particular product is discussed, whether there is acustomer service complaint, whether a type of service was discussed, orany other suitable aspect. First, the system may parse the transcribedtext file (step 800). In one implementation, the system may use thepreviously parsed transcribed text file (see FIG. 5). Then, to determinea categorization indicating a condition, the system may match thetranscribed text file to a phrase matrix that is associated with aspecific condition or treatment category and applies additional logic onhow the phrases appear together, what order, frequency, relevancy, etc.(step 802). The matrix may be a list of terms that are relevant orindicative of the condition. The condition may be determined by thestrength of the text file's relevance to a particular condition ortreatment matrix and logic. If the matrix matches the text, thatparticular condition may be assigned to the call file.

For example, a categorization matrix for “laser hair removal” mayinclude the words “unwanted hair,” “waxing,” “shaving,” “hair removal,”etc. If the text conversation includes one or more of these words, thesystem may consider this categorization for the condition for the filewhen it has been compared to this matrix. For example, if a patientstates “I have some unwanted hair on my upper lip, and waxing andshaving have not been helping, so I'd like to explore other options,”and the staff responds “Okay. Are looking for laser treatment? Our Gmaxproduct is great for that,” this may be put into a first categorizationof “laser hair removal” which may be triggered by keywords “unwantedhair,” “waxing,” and “shaving.”

The categorization may be set up to trigger when one of the terms existsin the conversation or any number of the terms, or all of the terms maybe required. For example the condition may be triggered if two or moreof the terms appear in the conversation. Logic rules may also beapplied, for example, including determining where in the syntax the wordappears to govern whether the condition is triggered for thecategorization. Relevancy strength may be considered when matching aconversation to a condition matrix.

Furthermore, many other matrices may exist. There may often be overlapbetween one or more matrices. Relevancies or priorities may be set upbetween different condition matrices. For example, if more terms of onematrix show up than another matrix, even though terms from both exist inthe conversation, the system may create a preference for one over theother. The logic may be set up in any number of ways. Some matrices, orterms in a matrix, may have higher rankings for priority than others.For example, if the word “wax” shows up, it may indicate a higher chancethat it is a laser hair removal than other treatments or conditions. Itmay also possibly indicate more than one treatment or condition.

In one exemplary implementation, the first condition categorization maybe considered important or necessary, so if there is no match (step804), the call may be flagged and sent to a human screener (step 806).If the relevancy threshold is met (step 804), the condition or treatmentcategory, e.g., laser hair removal, may be assigned to the file (step808) and the process moves to the next attribute.

Next, based on the first categorization, a second-tier categorizationassignment may occur by comparing the text to a second tier of matrices(step 810). In this case, the second tier identifies the physical areaof the condition or treatment. For example, given the previous exampleconversation transcription, the system may determine that the secondcategorization is “facial hair” due to the matching of the text to amatrix including key words such as “upper lip,” “eyebrows,” “chin,”“cheek,” etc. Different first categorization conditions have differentsecond-tier categorization matrices associated with them. For example,“laser hair removal” may have different physical areas associated withit than “stretch marks” would. That is, different physical areas mayhave their own matrices, e.g., one for facial hair, one for leg hair,etc. If the physical area category is present (step 812), the secondcategorization is applied to the file, e.g., “upper lip,” “facial hair”(step 814). If it is not present, the system may move to the nextcategorization comparison in the process without assigning an additionalphysical area categorization to the file.

The system then may identify a third categorization, in this case, anyspecific or trademarked medical devices, products, or prescriptions bycomparing the transcribed text to matrices with known names, aliases,slang, or references (step 816). It may compare the text to a particularproduct matrix and then may assign the corresponding attribute to thefile. Preference to assigning the value is given to devices, products orprescriptions that fall within the previously assigned condition ortreatment categories above. For example, from the previous examplediscussion transcription, the third categorization may be “Gentlemax byCandela” which may be triggered by various keywords such as “GentleMax,” “GeeMax,” “Gmax,” “Candela Gentlemax,” etc. If a specific productor prescription is present (step 818), the third categorizationassignment, e.g., Gentlemax by Candela, may be applied to the file (step820).

Although described with respect to dermatology and plastic surgery, thisprocess is applicable to other industries. Depending on the industry,environment or purpose in which the process is used, any number ofsuitable categorizations may be used and applied to any aspects that areappropriate. Similar to above, the categorizations may be performed bymatching the transcribed file with lists of keywords, or other logicalconditions that may determine whether the discussion is appropriate forthat particular categorization. These conditions and categorizations maybe used and adapted to other industries and aspects. For example,instead of a condition of a patient, the system may determine a productsold, such as a television, or any other suitable feature or aspect ofthe business.

FIG. 9 depicts an exemplary screen shot 902 showing an example of areport that may be generated based on information collected from theabove-mentioned processes. Users, e.g., doctors, may access this screenby accessing call analysis server 108 over network 112. The assignmentsof the call outcomes, conditions and categorizations may be used tocreate the reports. Any variations of this information may be used. Callanalysis server 108 may access the call file to retrieve assignedoutcomes, conditions, treatments, names and other information forreporting. The screen shot 902 may be accessed by a user accessing callanalysis server 108 over network 122. As can be seen from FIG. 9,various useful data may be easily determined through the analysis of thecall monitoring process.

For example, through collection of above-mentioned data, call analysisserver 108 may determine and display summary information 904 such as thetotal number of calls that came in, the number of booked appointments,an average booking rate, the national average booking rate, and thedeviation from the national average. In addition, it may also displaythe number of existing patients and the average call duration.

As also shown, the screen shot 902 may also display a breakdown ofconditions and treatments 906 about which callers were calling, bypercentage, for example. Furthermore, it may display call outcomebreakdown 908, showing how many calls booked an appointment, wereexisting patients, hung up while on hold, left a message, spoke to theanswering service or asked for additional information. It may alsodisplay call-level details 910 on each individual call, for example,showing the date, duration, call outcome, condition or treatment, andthe staff member that answered the call. The reports may also detailstatistics for individual staff members. The system may produce thesereports in any format, such as a graph of an average booking rate bymonth 912, and any other additional information may be included.

FIG. 10 depicts an exemplary flow chart for determining a phone calloutcome based on a response communication, according disclosedembodiments. The response communication may have multiple sources. Forexample, in some embodiments, the response communication may beautomatically generated by call analysis server 108 and it may be basedon information from the phone call. In other embodiments, the responsecommunication may be generated by an employee in office 106. Thedetermination of the call outcome based on the response communicationmay lead to more accurate determinations. For example, havingstandardized vocabulary in the response, and controlled data quality,may facilitate speech recognition used for transcription of data andoutcome determinations.

First, the system may determine words in the response communicationassociated with a phone call (step 1002). For example, the system maydetermine words in a phone call transcription from voice transcriptioncomputer 110. In some embodiments, the system may determine wordsutilizing parsing processes, like the ones described in step 800, toidentify words in an associated text file. In other embodiments, thesystem may identify words by delimiting a transcription based oncharacters, such as commas, tabs and/or spaces. In yet otherembodiments, the system may utilize speech recognition systems stored incall analysis server 108 and/or accessible through network 112 toidentify words.

Additionally, the system may also utilize machine learning techniquesand prior communications analyzed by call analysis server 108 todetermine or correct words in the response communication in step 1002.The system may employ, for example, a plurality of machine learningtechniques such as Hidden Markov models, Dynamic time warping, Neuralnetworks, and/or Deep feedforward neural networks to identify the wordsin the message. The identified words with these processes, orcombinations of processes, may be a single word, groups of words,phrases, and or/sounds.

The system then may proceed to generate a list of words including thedetermined words in the response communication (step 1004). The list ofwords may be an array of string variables, character variables, ornumeric variables constructed with accumulation functions. The list ofwords may also have a single dimension or multiple dimensions. Thesystem may access at least one database that stores a list of audiblesor signifiers (step 1006).

In some embodiments, audibles and signifiers may be a single or aplurality of words non commonly used in conversation. For example, callanalysis server 108 may determine that a response communication thatincludes the word “Gmax” has an outcome of a sale was made. As anotherexample, call analysis server 108 may determine that a responsecommunication that includes “mammoplasty” has an outcome of anappointment was made. In other embodiments, audibles may be phrases withan associated meaning not evident to caller 102. For example,salutations can vary form “hello,” “good morning,” “how are you today,”“nice to speak to you,” “hello my name is.” Each one of the salutationsvariations may be identified by caller analysis server 108 and used todetermine the call outcome. Similarly, ending phrases such as “goodbye,”“good day,” and “talk to you later” may be used to improve the accuracyof the determination performed by call analysis server 108. Even thoughfor caller 102 all the former examples of salutations and goodbyes mayhave the same meaning, call analysis server 108 may identify differentoutcomes of the phone call based on the specific salutation. In yetother embodiments, call analysis server 108 may identify sounds such asa clearing of the throat, a cough, or sneeze as an audible or signifier.These sounds may be used to determine the outcome. For example, theclearing of the throat may result in call analysis server 108 anappointment cancellation outcome.

The system may match the list of words with the list of audibles orsignifiers, and may identify audibles or signifiers in the message databased on the matching results (step 1008). In some embodiments, thesystem may sort the list of words and the list of audibles andsignifiers and match lists based on their organization. In otherembodiments, the system may assign values to characters in each elementof the list of words and query the list of audibles and signifiers foridentical values to expedite the search. In yet other embodiments thesystem may match the list of words and the list of audibles andsignifiers by grouping elements, for example grouping words by the sameinitial letter, filtering groups, and matching equivalent elements. Thesystem may execute these processes in call analysis server 108, in aprocessor accessible through network 112, and/or other availablecomputing device.

As a result of matching between the generated list of words and the listof audibles or signifiers, the system may determine that there are noaudibles or signifiers in the message data, and/or no similar elementsbetween the two lists (step 1010: No). Then, the system may proceed tostep 1012, in which it may flag the call for human screening in aprocess similar to the one described in steps 406, 412, and 806.Alternatively, the system may determine that there is at least oneaudible or signifier in the list of words (step 1010: Yes) and proceedto step 1014, in which the system may determine the number of audiblesor signifiers. If at least one audible or signifier is found in themessage data, the system may generate a new list of identified audibleor signifier that contains the matching elements between the two lists.The system may also modify the list of words to flag the elements thatare audible or signifier. Alternatively, or additionally, the system maygenerate a new list, of the same length to the list words, with Booleanvariables indicating if a matching element is in a position of the listof words. If more than one audible or signifier is determined to be inthe message data (step 1014: Yes), the system may apply logic rulesincluding, for example, where in the syntax the word appears to governwhether the condition is triggered for the categorization (step 1016).Additionally or alternatively, logic rules may refer to the relevancystrength when applying the logic rules or the interaction between theaudible or signifier. In some embodiments, the logic rules may instructthe system to consult a higher raking priority and, for example, selectonly the audible or signifier with the highest ranking. In otherembodiments, the logic rules may be based on Boolean operations betweenwords. For example, AND, OR, NOR, and/or NAND operations may be appliedto the group of audibles or signifiers with determined outcomes. After,applying logic rules the system may then proceed to determine an outcomefor the phone call based on identified audible or signifier and logicrules.

Words or sounds identified as audibles may have a direct impact in theoutcome determination performed by caller analysis server 108. Forexample, an audible ‘have a nice day’ may direct the call to an outcomeof no appointment being made. As another example, an audible of ‘tattooremoval’ may direct the call to an outcome of a tattoo removalappointment being made. Additionally, an audible may be an ‘eraseaudible’ to indicate that the call should not be classified. Forexample, in instances where caller 102 dials provisioned phone numberfor office 104 by mistake, the response communication may include anerase audible to have caller analysis server 108 remove the call fromthe system. Alternatively, call analysis server 108 may determine theoutcome of the phone call as null when at least one erase audible ispart of the communication response.

Words or sounds identified as signifiers may not have a direct impact inthe outcome determination but may indicate that following or previouswords should be used to determine the phone call outcome. For example,signifier ‘booked’ in sentence ‘your tattoo removal was booked’ mayindicate caller analysis server that previous words (tattoo removal wasbooked), should be used to determine the outcome of the phone call.

In step 1014, the system may determine also that there is a singleaudible or signifier in the message data (step 1014: No). The system maydetermine if the audible or signifier is a signifier keyword. Thedetermination of a signifier keyword may be done by accessing a databasewhich may store a list of signifier keywords, and comparing elementsbetween lists as described in the matching process for step 1008. Asignifier keyword may be a word which indicates that adjacent words aregoing to be relevant to categorize the communication. Then, if asignifier keyword is identified in the response communication the systemmay proceed to step 1022, in which it may identify adjacent words to thesignifier keyword. For example, if the response communication includes asentence “let me explain the laser procedure,” the system may identify“explain” as a signifier keyword, and “laser” and “procedure” as theadjacent words. The system may then continue to step 1024, in which itdetermines the communication category and/or outcome based on thesignifier keyword and the adjacent words.

In step 1020, the system may alternatively determine that the audible orsignifier is not a signifier keyword (step 1020: No). The system maythen proceed to step 1026 and determine the category of thecommunication based on the identified audible.

FIG. 11 presents an exemplary flow chart to determine adjacent wordswhen an audible or signifier is determined to be a signifier keyword,further describing step 1022. When the system determines that theaudible or signifier is a signifier keyword (step 1020: Yes), it mayproceed to step 1102 and access a signifier keyword database. Thedatabase may include a plurality of keywords with an associated wordcount and direction. For example, the database may comprise elementswith associated attributes and at least one of those attributes indicatea word count and/or a direction. The system may then proceed to step1104, in which the system determines the word count and direction forthe identified signifier keyword.

The system, may determine the word count associated with the signifierin step 1106. When the associated count is zero (step 1106: Yes), thesystem may access a database with stop signifier keywords. The systemmay then match the identified keywords in the message data with a stopsignifier keyword (step 1110). The system may then determine thatadjacent words are words between signifier and stop signifier keywords.For example, if the message data includes “let me book your appointmentfor a laser procedure in the agenda,” the system may determine that“book” is a signifier keyword. The system may additionally determinethat book has a zero word count associated and then determine that“agenda” is a stop signifier keyword. It will then consider “yourappointment for a laser procedure in the” as the adjacent words.Alternatively, in step 1106 the system may determine that the word countis not zero (step 1106: No). The system may then determine a directionassociated with the signifier keyword (step 1108) and determine theadjacent words based on the word count and direction associated with thesignifier keyword. For example, the word “hair” may be determined to bea signifier keyword with a count of 2 and a forward direction. Whenmessage data contains “your hair removal appointment has been scheduledfor tomorrow,” the system may determine that adjacent words are“removal” and “appointment.” In a second example, the word “rescheduled”may be determined to be a signifier keyword with a count of three in areverse direction. When message data contains “we confirm that yourwaxing has been rescheduled,” the system may determine that adjacentwords are “waxing,” “has,” and “been.” The system may execute theseprocesses in call analysis server 108, in a processor accessible throughnetwork 112, and/or other available computing device.

Examples of phone calls and outcome determination related to cosmeticsurgery have been provided in this application. However, disclosedembodiments are consistent with multiple fields and may be utilized inany type of business that communicates with customers.

In some embodiments the phone call, response communication, and outcomemay be related to the field of financial services. In such embodiments,caller 102 may request information about, for example, financialproducts or current loan rates. The response communication may theninclude audibles or signifiers that result in caller analysis server 108making an outcome determination related to the financial services field.For example the outcome may include: (1) the caller opened an account,(2) the caller request mortgage information, (3) the caller cancelled anaccount, (4) the caller made a transaction, (5) the caller made atransfer, (6) the caller made a trade, (7) the caller is closing anaccount, (8) the caller requested taxes information, (9) the callercannot login to an online account, (10) the caller is requesting a newcredit. Additionally, in such embodiments, the phone call may bereceived by a financial services office and the caller may be one of apotential customer to the financial service office or a current customerof the financial services office.

Additionally, in embodiments where phone call, response communication,and outcome may be related to the field of financial services, callanalysis server 108 may be in communication with additional serversthat, for example, may have customer information, may execute orders, ormay facilitate a transfer. For example, call analysis server may be incommunication with a market clearing server that execute trades or placeinvestments. Caller analysis server 108 may be communicated with suchserver directly or through network 112. Additionally, in theseembodiments voice transcription computer 110 may have encryptionmechanisms to communicate with call analysis server 108 and securesensitive financial information such as social security number or bankaccount number. Also, in these embodiments call analysis server 108 mayconnect caller 102 with other office, outside office 106, depending onthe outcome of the call. For example, if a call outcome is determined tobe “caller will make an investment,” call analysis server 108 mayconnect caller 102 with an investment institution.

In other embodiments the phone call, response communication, and outcomemay be related with the field of insurance services. In suchembodiments, caller 102 may request information about, for example,insurance products. The response communication may then include audiblesor signifiers that result in caller analysis server 108 making anoutcome determination related to the insurance services. For example theoutcome may include: (1) the caller bought insurance products, such ashome, life, auto or renters insurance, (2) the caller made anappointment with an agent, (3) the caller is filing a claim, (4) thecaller is switching insurance, (5) the caller requested a quote, or (6)the caller requested a payment plan. Additionally, in such embodiments,the phone call may be received by an insurance office and the caller maybe one of a potential customer to the insurance service office or acurrent customer of the insurance services office.

In other embodiments the phone call, response communication, and outcomemay be related to the field of car rentals. In such embodiments, caller102 may request information about, for example, available cars orcurrent rental rates. The response communication may then includeaudibles or signifiers that result in caller analysis server 108 makingan outcome determination related to car rentals. For example the outcomemay include: (1) the caller reserved a car, (2) the caller cancelled areservation, (3) the caller inquired rates, (4) no vehicles wereavailable in callers requested location, (5) caller requested on-roadassistance, (6) caller will be late for his reservation, (7) callerrequested a vehicle upgrade, (8) caller requested a vehicle downgrade,(9) caller inquired about insurance. Additionally, in such embodiments,the phone call may be received by a car rental office and the caller maybe one of a potential customer to the car rental office or a currentcustomer of the car rental office.

In some embodiments the phone call, response communication, and outcomemay be related to the field of tickets retail In such embodiments,caller 102 may request information about, for example, upcoming eventsor tickets availability to a concert, sporting event or other type ofshow. The response communication may then include audibles or signifiersthat result in caller analysis server 108 making an outcomedetermination related to the tickets retail field. For example theoutcome may include: (1) the caller purchased a ticket, (2) the callerinquired event is sold out, (3) the caller requested event information,(4) the caller asked about venue information, (5) the caller made agroup purchase, (6) the caller reserved a suite, (7) the caller isrequesting a refund, (8) caller bought premium tickets, (9) the callerinquired ticket packages, (10) the caller bought ticket packages.Additionally, in such embodiments, the phone call may be received by atickets retail office and the caller may be one of a potential customerto the tickets retail office or a current customer of the tickets retailoffice.

In some embodiments the phone call, response communication, and outcomemay be related to the field of marketing services. In such embodiments,caller 102 may request information about, for example, email marketingor website design. The response communication may then include audiblesor signifiers that result in caller analysis server 108 making anoutcome determination related to the marketing services field. Forexample the outcome may include: (1) the caller requested a quote, (2)the caller asked about website design, (3) the caller requested searchengine optimization services, (4) the caller requested search enginemarketing, (5) the caller requested a non-available service, (6) thecaller requested a market research, (7) the caller is planning an event,(8) the caller scheduled an appointment, Additionally, in suchembodiments, the phone call may be received by a marketing servicesoffice and the caller may be one of a potential customer to themarketing service office or a current customer of the marketing servicesoffice.

In some embodiments the phone call, response communication, and outcomemay be related to the field of sports industry. In such embodiments,caller 102 may request information about, for example, upcoming games oravailable merchandise. The response communication may then includeaudibles or signifiers that result in caller analysis server 108 makingan outcome determination related to the tickets retail field. Forexample the outcome may include: (1) the caller purchased merchandise,(2) the caller inquired asked ticket information, (3) the callerrequested an stadium visit, (4) the caller asked about venueinformation, (5) the caller purchased season tickets, (6) the callerreserved a suite, (7) the caller bought pay per view event.Additionally, in such embodiments, the phone call may be received by asports industry office and the caller may be one of a potential customerto the sports industry office or a current customer of the sportsindustry office.

In yet other embodiments the phone call, response communication, andoutcome may be related to high volume call centers. In such embodiments,caller 102 may request information about, for example, ticketsavailability. The response communication may then include audibles orsignifiers that result in caller analysis server 108 making an outcomedetermination related to the operation of a high volume call center. Forexample the outcome may include: (1) the caller requested generalinformation, (2) the caller was transferred to a specific unit, (3) thecaller requested technical support, (4) the caller requested anappointment, (5) the caller made a purchase, (6) the caller has made areservation. Additionally, in such embodiments, the phone call may bereceived by a high volume call center and the caller may be one of apotential customer to a service being represented by the high volumecall center or a current customer of a service being represented by thehigh volume call center.

The foregoing description of various embodiments provides illustrationand description, but is not intended to be exhaustive or to limit thedisclosed embodiments to the precise form disclosed. Modifications andvariations are possible in light of the above teachings or may beacquired from practice in accordance with the disclosed embodiments. Itis to be understood that the disclosed embodiments are intended to covervarious modifications and equivalent arrangements included within thespirit and scope of the appended claims.

What is claimed is:
 1. A method in a data processing system forautomatically determining an outcome of a phone call, the methodcomprising: receiving voice data of the phone call; transmitting aresponse communication based on the voice data, wherein the responsecommunication includes at least one audible or signifier; identifying,by at least one processor, the at least one audible or signifier in theresponse communication; accessing a list of audibles and signifiersstored in a database; determining whether there is at least one audibleor signifier in the response communication; identifying adjacent wordsin the response communication when the at least one audible or signifieris in the response communication; and automatically determining theoutcome of the phone call based on the audible or signifier in theresponse communication.
 2. The method of claim 1, wherein the responsecommunication is generated by a call operator.
 3. The method of claim 1,wherein the at least one audible or signifier includes at least one wordthat is not commonly used in conversation.
 4. The method of claim 1,wherein the at least one audible or signifier includes a plurality ofwords.
 5. The method of claim 1, wherein identifying the at least oneaudible or signifier comprises: automatically transcribing the responsecommunication into text data; generating a list of words based on thetext data; and associating the list of words and with the list ofaudibles and signifiers.
 6. The method of claim 5 further comprising:assigning the call to a human screener when there is no associationbetween the list of words and with the list of audibles and signifiers.7. The method of claim 5 further comprising: applying a set of logicrules when more than one audible or signifier are identified.
 8. Themethod of claim 1, wherein identifying adjacent words in the messagedata comprises: accessing the database; determining a word countassociated with the signifier; determining adjacent words based onsignifier count and a signifier direction when the signifier count isnot zero; and determining adjacent words based on words between thesignifier and a stop signifier when the signifier is zero.
 9. The methodof claim 1, wherein the outcome comprises one of: (1) the caller bookedan appointment, and (2) the caller did not book an appointment.
 10. Themethod of claim 1, wherein the outcome comprises one of (1) the callerpurchased a product, and (2) the caller did not purchase a product. 11.The method of claim 1 further comprising: automatically determining acondition discussed during the phone call.
 12. The method of claim 1further comprising: automatically determining a service or productassociated with the phone call based on the audible or signifier in theresponse communication.
 13. The method of claim 1 further comprising:automatically determining if a caller made a purchase associated basedon the audible or signifier in the response communication.
 14. Themethod of claim 1, wherein: the at least one audible or signifier is anerase audible; and the outcome of the phone call is null when at leastone audible or signifier is an erase audible.
 15. The method of claim 1,wherein the phone call is intended for a financial services office andthe caller is one of: (a) a client of the financial services office, and(2) a potential client of the financial services office.
 16. The methodof claim 15, wherein the phone call outcome comprises one of: (1) thecaller opened an account, (2) the caller request mortgage information,(3) the caller cancelled an account, (4) the caller made a transaction,(5) the caller made a transfer, (6) the caller made a trade, (7) thecaller is closing an account, (8) the caller requested taxesinformation, (9) the caller cannot login to an online account, (10) thecaller is requesting a new credit.
 17. The method of claim 1, whereinthe phone call intended for a tickets retail office and the caller isone of: (1) a client of the ticket retail office, and (2) a potentialclient of the ticket retail office.
 18. The method of claim 17, whereinthe phone call outcome comprises one of: (1) the caller purchased aticket, (2) the caller inquired event is sold out, (3) the callerrequested event information, (4) the caller asked about venueinformation, (5) the caller made a group purchase, (6) the callerreserved a suite, (7) the caller is requesting a refund, (8) callerbought premium tickets, (9) the caller inquired ticket packages, (10)the caller bought ticket packages.
 19. The method of claim 1, whereinthe phone call is intended for a marketing services office and thecaller is one of: (1) a client of the marketing services office, and (2)a potential client of the marketing services office.